package com.chiry.enjoyandroid.retrofit;

import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Part;
import retrofit2.http.Path;
import retrofit2.http.Query;

/**
 * @author fyx
 * @version 1.0
 * @date 2021/8/27 14:44
 */
public interface HttpbinService {
    /**
     * 注意这里返回值是retrofit 类型的文件包
     *
     * 使用过程：
     * 1.引入相关retrofit包依赖
     * 2.写相关retrofit对应请求地址的接口
     * 3.返回值类型是retrofit下的Call<ResponseBody>
     * 4.添加相关注解
     *
     */
    //http://www.pinbin.org/post?xxx=value
    //Call<ResponseBody> postRequest(@Field("xxx") String username, String pwd);
    //post 方式传参使用@Filed , Get 方式传参使用@Query
    @FormUrlEncoded  //表示以form表单形式提交请求
    @POST("post")  //表示post方式请求路径post
    Call<ResponseBody> postRequest(@Field("username") String username, @Field("password") String pwd);

    @GET("get")
    Call<ResponseBody> getRequest(@Query("username") String username,@Query("password") String pwd);

    @POST("post")
    Call<ResponseBody> postBody(@Body RequestBody body);

    @POST("{id}")
    Call<ResponseBody> postPath(@Path("id") String id);
}
